package cn.gemiman.daoyi.module.cms.dal.dataobject.appsitecomment;

import cn.gemiman.daoyi.framework.mybatis.core.type.LongListTypeHandler;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.gemiman.daoyi.framework.mybatis.core.dataobject.BaseDO;

/**
 * 站点评论 DO
 *
 * @author 道一源码
 */
@TableName(value = "cms_app_site_comment", autoResultMap = true)
@KeySequence("cms_app_site_comment_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AppSiteCommentDO extends BaseDO {

    /**
     * 编号
     */
    @TableId
    private Long id;
    /**
     * 用户类型
     */
    private Integer userType;
    /**
     * 用户编号
     */
    private Long userId;
    /**
     * 用户昵称
     */
    private String userNickname;
    /**
     * 用户头像
     */
    private String userAvatar;
    /**
     * 站点编号
     */
    private Long appSiteId;
    /**
     * 站点标识
     */
    private String appId;
    /**
     * 栏目编号
     */
    private Long categoryId;
    /**
     * 文章编号
     */
    private Long articleId;
    /**
     * 说说编号
     */
    private Long talkId;
    /**
     * 留言编号
     */
    private Long messageId;
    /**
     * 父级编号
     */
    private Long parentId;
    /**
     * 父级编号集
     */
    @TableField(typeHandler = LongListTypeHandler.class)
    private List<Long> parentIds;
    /**
     * 内容
     */
    private String commentContent;
    /**
     * 评论状态
     *
     * 枚举 {@link TODO common_status 对应的类}
     */
    private Integer status;
    /**
     * 审核状态
     *
     * 枚举 {@link TODO bpm_process_instance_status 对应的类}
     */
    private Integer approveStatus;
    /**
     * 排序
     */
    private Long sort;
    /**
     * 创建者ip
     */
    private String creatorIp;
    /**
     * 创建者城市
     */
    private String creatorCity;
    // @Schema(description = "点赞数量")
    private Long thumbsUpTimes = 0L;
}
